package com.rain.entity;

import java.io.Serializable;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import com.rain.enums.DateTimePatternEnum;
import com.rain.utils.DateUtil;

/**
 * @auther: rain
 * @description: 
 * @date: 2025-10-31
 */
public class SysUser implements Serializable {

	/**
	 * 
	 */
	private Integer id;

	/**
	 * 用户名
	 */
	private String username;

	/**
	 * 真实名
	 */
	private String realname;

	/**
	 * 手机号
	 */
	private String mobile;

	/**
	 * 头像路径
	 */
	private String avatar;

	/**
	 * 邮箱
	 */
	private String email;

	/**
	 * 密码
	 */
	private String password;

	/**
	 * 状态 1正常 2禁用
	 */
	private Integer status;

	/**
	 * 创建时间
	 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date createTime;

	/**
	 * 更新时间
	 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date updateTime;

	/**
	 * 删除时间
	 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date deleteTime;

	/**
	 * 最后登录时间
	 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date lastLoginTime;

	/**
	 * 地图比例
	 */
	private Integer mapZoom;

	/**
	 * 地图经度
	 */
	private String mapLng;

	/**
	 * 地图纬度
	 */
	private String mapLat;

	public void setId(Integer id)  { 
		this.id = id;
	}

	public Integer getId( ) { 
		return this.id;
	}

	public void setUsername(String username)  { 
		this.username = username;
	}

	public String getUsername( ) { 
		return this.username;
	}

	public void setRealname(String realname)  { 
		this.realname = realname;
	}

	public String getRealname( ) { 
		return this.realname;
	}

	public void setMobile(String mobile)  { 
		this.mobile = mobile;
	}

	public String getMobile( ) { 
		return this.mobile;
	}

	public void setAvatar(String avatar)  { 
		this.avatar = avatar;
	}

	public String getAvatar( ) { 
		return this.avatar;
	}

	public void setEmail(String email)  { 
		this.email = email;
	}

	public String getEmail( ) { 
		return this.email;
	}

	public void setPassword(String password)  { 
		this.password = password;
	}

	public String getPassword( ) { 
		return this.password;
	}

	public void setStatus(Integer status)  { 
		this.status = status;
	}

	public Integer getStatus( ) { 
		return this.status;
	}

	public void setCreateTime(Date createTime)  { 
		this.createTime = createTime;
	}

	public Date getCreateTime( ) { 
		return this.createTime;
	}

	public void setUpdateTime(Date updateTime)  { 
		this.updateTime = updateTime;
	}

	public Date getUpdateTime( ) { 
		return this.updateTime;
	}

	public void setDeleteTime(Date deleteTime)  { 
		this.deleteTime = deleteTime;
	}

	public Date getDeleteTime( ) { 
		return this.deleteTime;
	}

	public void setLastLoginTime(Date lastLoginTime)  { 
		this.lastLoginTime = lastLoginTime;
	}

	public Date getLastLoginTime( ) { 
		return this.lastLoginTime;
	}

	public void setMapZoom(Integer mapZoom)  { 
		this.mapZoom = mapZoom;
	}

	public Integer getMapZoom( ) { 
		return this.mapZoom;
	}

	public void setMapLng(String mapLng)  { 
		this.mapLng = mapLng;
	}

	public String getMapLng( ) { 
		return this.mapLng;
	}

	public void setMapLat(String mapLat)  { 
		this.mapLat = mapLat;
	}

	public String getMapLat( ) { 
		return this.mapLat;
	}

	@Override
	public String toString()  {
		return " SysUser { id: " + id + ", " + "username: " + username + ", " + "realname: " + realname + ", " + "mobile: " + mobile + ", " + "avatar: " + avatar + ", " + "email: " + email + ", " + "password: " + password + ", " + "status: " + status + ", " + "createTime: " + DateUtil.format(createTime, DateTimePatternEnum.YYYY_MM_DD_HH_MM_SS.getPattern()) + ", " + "updateTime: " + DateUtil.format(updateTime, DateTimePatternEnum.YYYY_MM_DD_HH_MM_SS.getPattern()) + ", " + "deleteTime: " + DateUtil.format(deleteTime, DateTimePatternEnum.YYYY_MM_DD_HH_MM_SS.getPattern()) + ", " + "lastLoginTime: " + DateUtil.format(lastLoginTime, DateTimePatternEnum.YYYY_MM_DD_HH_MM_SS.getPattern()) + ", " + "mapZoom: " + mapZoom + ", " + "mapLng: " + mapLng + ", " + "mapLat: " + mapLat + " } ";
	}
}